lib/repo-pull: Factor out enqueue function for ScanObjectQueueData
authorPhilip Withnall <withnall@endlessm.com>
Tue, 22 May 2018 11:17:38 +0000 (12:17 +0100)
committerAtomic Bot <atomic-devel@projectatomic.io>
Fri, 25 May 2018 13:12:33 +0000 (13:12 +0000)
This introduces no functional changes, but will make upcoming support
for retrying downloads easier to add.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
Closes: #1599
Approved by: jlebon

src/libostree/ostree-repo-pull.c

index 64035ec5f0935940dc582b3c09a353126b9c700c..87dd322ded380472482397cd243e4d4d756e2f44 100644 (file)
@@ -215,6 +215,8 @@ static void queue_scan_one_metadata_object (OtPullData                *pull_data
                                             guint                      recursion_depth,
                                             const OstreeCollectionRef *ref);
 
+static void queue_scan_one_metadata_object_s (OtPullData                *pull_data,
+                                              ScanObjectQueueData       *scan_data);
 static void queue_scan_one_metadata_object_c (OtPullData                *pull_data,
                                               const guchar              *csum,
                                               OstreeObjectType           objtype,
@@ -1764,6 +1766,14 @@ queue_scan_one_metadata_object (OtPullData                *pull_data,
   queue_scan_one_metadata_object_c (pull_data, buf, objtype, path, recursion_depth, ref);
 }
 
+static void
+queue_scan_one_metadata_object_s (OtPullData          *pull_data,
+                                  ScanObjectQueueData *scan_data)
+{
+  g_queue_push_tail (&pull_data->scan_object_queue, scan_data);
+  ensure_idle_queued (pull_data);
+}
+
 static void
 queue_scan_one_metadata_object_c (OtPullData                *pull_data,
                                   const guchar              *csum,
@@ -1780,8 +1790,7 @@ queue_scan_one_metadata_object_c (OtPullData                *pull_data,
   scan_data->recursion_depth = recursion_depth;
   scan_data->requested_ref = (ref != NULL) ? ostree_collection_ref_dup (ref) : NULL;
 
-  g_queue_push_tail (&pull_data->scan_object_queue, scan_data);
-  ensure_idle_queued (pull_data);
+  queue_scan_one_metadata_object_s (pull_data, g_steal_pointer (&scan_data));
 }
 
 /* Called out of the main loop to look at metadata objects which can have